package exercicio08.controle;

import java.util.Iterator;

import exercicio08.modelo.CadastroUsuarios;
import exercicio08.modelo.Estoque;
import exercicio08.modelo.Produto;
import exercicio08.modelo.Usuario;

public class FachadaSistemaEstoque {
	
	private static FachadaSistemaEstoque instance;
	private CadastroUsuarios cadUsuarios;
	private Estoque estoque;
	
	protected FachadaSistemaEstoque() {
		super();
		cadUsuarios = CadastroUsuarios.getInstance();
		estoque = Estoque.getInstance();
	}
	
	public static FachadaSistemaEstoque getInstance() {
		if (instance == null) {
			instance = new FachadaSistemaEstoque();
		}
		return instance;
	}

	public Usuario autenticar(String login, String senha) {
		return cadUsuarios.autentica(login, senha);
	}
	
	public Iterator<Produto> listaProdutos() {
		return estoque.listaProdutos();
	}
	
	public void entraQuantidadeProduto(int idProduto, int quant) {
		estoque.entraQuantidadeProduto(idProduto, quant);
	}
	
	public boolean saidaQuantidadeProduto(int idProduto, int quant) {
		return estoque.saidaQuantidadeProduto(idProduto, quant);
	}
	
	public void adicionaProtuto(String descricao, double preco, int quantidade) {
		estoque.adicionaProtuto(descricao, preco, quantidade);
	}
}
